package com.xAdmin.domain.entity.core;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.xAdmin.model.BasicField;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;


/**
 * @author: xiaYZ 2025/1/22
 * @version: 1.0
 */
@EqualsAndHashCode(callSuper = true)
@TableName("core_user")
@Data
public class CoreUser extends BasicField implements Serializable {

    /**
     * 主键ID。
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 用户名、账号。
     */
    @TableField("user_name")
    private String userName;

    /**
     * 密码。
     */
    @TableField("password")
    private String password;

    /**
     * 名称。
     */
    @TableField("full_name")
    private String fullName;

    /**
     * 部门ID。
     */
    @TableField("dept_id")
    private Long deptId;

    /**
     * 部门名称
     */
    @TableField("dept_name")
    private String deptName;

    /**
     * 手机号。
     */
    @TableField("phone")
    private String phone;

    /**
     * 状态（0停用，1启用）。
     */
    @TableField("status")
    private Integer status;


    /**
     * 最后登录时间。
     */
    @TableField("last_login_time")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime lastLoginTime;


}